require("../css/register.less")

document.ready(function () {
    let captchaCode = ""; //验证码
    // 生成验证码
    const captchaDrawer = new CaptchaMini({
        // 调用验证码函数
        lineNum: 8,
        fontSize: 60,
    })
    //调用方法  把验证码画出来
    captchaDrawer.draw(document.querySelector("#captcha"), function (code) {
        captchaCode = code //把图片验证码保留起来
    })
    // 获取表单元素
    const tel = document.querySelector("#tel") //手机号
    const reg = document.querySelector("#reg") //验证码
    const pwd = document.querySelector("#pwd") //密码
    const repwd = document.querySelector("#repwd") //验证密码
    const hint = document.querySelector("#hint") //提示框
    const submitbtn = document.querySelector("#submitbtn")
    submitbtn.addEventListener("click", function () {
        // 获取表单元素中的值
        const telVal = tel.value;
        const regVal = reg.value;
        const pwdVal = pwd.value;
        const repwdVal = repwd.value;
        // 效验表单
        if (!window.utils.isPhoneNumber(telVal)) { //验证手机号
            hint.textContent = "手机号格式错误";
            return;
        } else if (regVal === '') { //验证验证码
            hint.textContent = "验证码不能空";
            return;
        } else if (regVal.toLowerCase() !== captchaCode.toLocaleLowerCase()) {
            hint.textContent = "验证码错误";
            return
        } else if (pwdVal === "") { //验证密码
            hint.textContent = "密码不能空";
            return;
        } else if (!window.utils.isPassword(pwdVal)) {
            hint.textContent = "密码不合法";
            return
        } else if (pwdVal !== repwdVal) { //验证两次输入密码是否相同
            hint.textContent = "两次输入的密码不同";
            return
        } else {
            hint.textContent = ""; //删除提示
            // 所有验证都通过就向后台发送ajax请求
            window.$http.post('users/add', {
                "account": telVal,
                "password": pwdVal
            }, function (res) {
                // 注册成功向后台发送数据，并自动跳转到首页
                if (res.status === 0) {
                    window.$http.post('users/login', {
                        "account": telVal,
                        "password": pwdVal
                    }, function (res) {
                        if (res.status === 0) {
                            // 成功提示
                            window.utils.showTost("succ", "注册成功", 1000);
                            // 将获取到账户信息保存到本地存储
                            window.localStorage.setItem("userId", res.data.user.userId);
                            // 成功
                            setTimeout(function () {
                                window.location.href = "./home.html"
                            }, 1000)
                        } else {
                            // 失败
                            window.utils.showTost("err", res.msg, 1000)
                        }
                    })
                } else {
                    // 失败
                    window.utils.showTost("err", res.msg, 1000)
                }
            })
        }
    })

})